package com.xinbochuang.machine.admin.service.system;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xinbochuang.machine.admin.domain.system.SysStorehouse;
import com.xinbochuang.machine.admin.domain.system.SysStorehouseIn;

import java.util.List;

/**
 * @author 黄晓鹏
 * @date 2020-09-27
 */
public interface ISysStorehouseInService extends IService<SysStorehouseIn> {

    /**
     * 查询入库分页列表
     *
     * @param storehouseIn 入库
     * @return 结果
     */
    List<SysStorehouseIn> selectList(SysStorehouseIn storehouseIn);

    /**
     * 根据主键查询入库表
     *
     * @param inId 主键
     * @return 结果
     */
    SysStorehouseIn selectById(Integer inId);

    /**
     * 插入入库表
     *
     * @param storehouseInList 入库集合
     * @return 结果
     */
    boolean insertStorehouseIn(List<SysStorehouseIn> storehouseInList);

    /**
     * 修改入库表
     *
     * @param storehouseIn 入库
     * @return 结果
     */
    boolean updateStorehouseIn(SysStorehouseIn storehouseIn);

    /**
     * 批量删除入库表
     *
     * @param ids 主键集合
     * @return 结果
     */
    boolean deleteByIds(Integer[] ids);

    /**
     * 查询为删除的/在库的物品信息
     *
     * @return 入库
     */
    List<SysStorehouse> online();

    /**
     * 修改入库状态
     *
     * @param storehouseIn 入库
     * @return 结果
     */
    boolean updateStatus(SysStorehouseIn storehouseIn);

    List<SysStorehouse> storelist(SysStorehouseIn storehouseIn);

    /**
     * 查询导出待办列表
     *
     * @param storehouseIn 查询条件
     * @return 结果
     */
    List<SysStorehouseIn> selectExportList(SysStorehouseIn storehouseIn);

    /**
     * 查询导出库存列表
     *
     * @param storehouseIn 查询条件
     * @return 结果
     */
    List<SysStorehouse> selectExportStoreList(SysStorehouseIn storehouseIn);
}
